#pragma once
#ifndef CLIB_STACK_CONF_H
#define CLIB_STACK_CONF_H

#include "clib_type.h"

#ifdef __cplusplus
extern "C" {
#endif

typedef struct clib_stack_conf_s
{
    u08_t   sack;
    u08_t   sack_perm;
    u08_t   wack;
    u08_t   scale;
    u08_t   timestamp;
    u08_t   hand_ack;       /** 三次握手是否发送ACK **/
    u08_t   close;          /** 关闭方式 **/
    u08_t   lock;
    u16_t   mtu;
    u16_t   recv_buf;
    u16_t   send_buf;
    u16_t   route;
    u16_t   arp;
    u16_t   ndp;
    u32_t   time_wait;
    u32_t   time_out;
    u32_t   conn;
    u32_t   sock_cnt;
    u32_t   thd_cnt;
} stack_conf_t;

extern stack_conf_t  stack_cfg;

i32_t
clib_stack_read_conf(const i08_t* file);

#ifdef __cplusplus
}
#endif

#endif